package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 充值订单对象 l_recharge
 *
 * @author zyb
 * @date 2022-01-02
 */
@Data
public class LRecharge extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(value = "rechargeid", type = IdType.AUTO)
    @Excel(name = "主键")
    private Long rechargeid;

    /** 订单号 */
    @Excel(name = "订单号")
    private String billcode;

    /** 订单日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "订单日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date billdate;

    /** 客户ID */
    @Excel(name = "客户ID")
    private Long gid;

    /** 充值金额 */
    @Excel(name = "充值金额")
    private BigDecimal addvalue;

    /** 充值后余额 */
    @Excel(name = "充值后余额")
    private BigDecimal amount;

    /** 收款账户 */
    @Excel(name = "收款账户")
    private Long accid;

    /** 开单人 */
    @Excel(name = "开单人")
    private Long userid;

    /** 充值类型1：线上充值2：后台充值 */
    @Excel(name = "充值类型1：线上充值2：后台充值")
    private Long billtype;

    /** 单据状态 */
    @Excel(name = "单据状态")
    private Long billstate;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("rechargeid", getRechargeid())
            .append("billcode", getBillcode())
            .append("billdate", getBilldate())
            .append("gid", getGid())
            .append("addvalue", getAddvalue())
            .append("amount", getAmount())
            .append("accid", getAccid())
            .append("userid", getUserid())
            .append("billtype", getBilltype())
            .append("billstate", getBillstate())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .toString();
    }
}
